#ifndef LOGGER_H
#define LOGGER_H

#include<cstdio>
#include<cstdarg>
#include<cstring>
#include<time.h>

class log
{   public:
        static FILE * file; //!< if nothing is explicitly set stderr is used

        static int level;   //!< Log levels can be combined. To do this just use '|' as a separator -olog-level=WARN|ERROR. 
			    //!< The default is all log levels.
   
        static const int LOG_NONE  = 0;  
        static const int LOG_ERROR = 1;  
        static const int LOG_WARN  = 2;  
        static const int LOG_INFO  = 4;  
        static const int LOG_DEBUG = 8;  

        static void error(const char *format, ...);

        static void warn(const char *format, ...);

        static void info(const char *format, ...);
        
        static void debug(const char *format, ...);
};

#endif
